// 流水号插件类型
export const pluginType = {
  CONSTANT: '固定字符串',
  DATE_TIME: '日期时间',
  VARIABLE: '变量',
  FORM_FIELD: '表单字段',
  RANDOM_CODE: '随机码',
  AUTO_INCREMENT: '自增序列'
};
// 流水号周期类型
export const periodType = {
  RESET_BY_YEAR: '按年重置',
  RESET_BY_QUARTER: '按季度重置',
  RESET_BY_MONTH: '按月重置',
  RESET_BY_WEEK: '按周重置',
  RESET_BY_DAY: '按日重置',
  NONE: '不重置'
};
// 变量类型
export const varType = {
  CUSTOM: '自定义变量',
  SYSTEM: '系统变量'
};
// 随机码类型
export const randomCodeType = {
  UPPER_CASE: '大写字母',
  LOWER_CASE: '小写字母',
  DIGIT: '数字'
};
// 流水号成员结构map
export const sequenceItemStrMap = {
  CONSTANT: {
    pluginType: 'CONSTANT',
    value: ''
  },
  DATE_TIME: {
    pluginType: 'DATE_TIME',
    value: 'yyyyMMdd'
  },
  VARIABLE: {
    pluginType: 'VARIABLE',
    value: 'USER_NAME',
    variableType: varType.SYSTEM
  },
  FORM_FIELD: {
    pluginType: 'FORM_FIELD',
    value: '', // 表单字段的key
    defaultValue: ''
  },
  RANDOM_CODE: {
    pluginType: 'RANDOM_CODE',
    length: 3, // 随机码长度 (1-8)
    randomCodeType: 'UPPER_CASE'
  },
  AUTO_INCREMENT: {
    pluginType: 'AUTO_INCREMENT', // 自增序列
    paddingLeft: true, // 固定数位 :: 左侧自动补零
    length: 5, // 自增序列号长度，超过最大长度则重新开始计数,
    startValue: 1, // 流水号起始值 每次重置后将从此值开始计数
    periodType: 'RESET_BY_YEAR',
    step: 1 // 步长
  }
};
// 流水号变量
export const sequenceConst = {
  pluginType: pluginType,
  periodType: periodType,
  varType: varType,
  randomCodeType: randomCodeType
};
// 流水号成员禁用列表
export const sequenceDisableList = [
  'sequence',
  'text',
  'divider',
  'upload',
  'imageUpload',
  'table',
  'relatedForm',
  'editor',
  'iframe',
  'image',
  'qrCode',
  'button'
];
